﻿using System.Threading.Tasks;
using Abp.Application.Services;
using Abp.Application.Services.Dto;
using JPW.OnlinePaperSubmissionSystem.Auditing.Dto;
using JPW.OnlinePaperSubmissionSystem.Dto;
using JPW.OnlinePaperSubmissionSystem.Project.Dto;
using Kendo.DynamicLinq;
using System.Collections.Generic;

namespace JPW.OnlinePaperSubmissionSystem.Project
{
    public interface IManuscriptAppService : IApplicationService
    {
        DataSourceResult KendoGetManuscripts(DataSourceRequest input);
        
        ListResultOutput<ManuscriptListDto> GetManuscripts(GetManuscriptInput input);
        
        Task<ListResultOutput<ManuscriptListDto>> GetManuscriptsAsync();

        Task DeleteManuscript(IdInput input);
        
        Task CreateOrUpdateManuscript(CreateOrUpdateManuscriptInput input);
        
        Task CreateManuscriptAsync(CreateOrUpdateManuscriptInput input);
        
        Task UpdateManuscriptAsync(CreateOrUpdateManuscriptInput input);
        
        Task<GetManuscriptForEditOutput> GetManuscriptForEdit(NullableIdInput input);

        ListResultOutput<AuditListDto> GetAudit(long id);
       


    }
}